Ext.onReady(function() {
	showProgress('加载数据，请稍候...');

	setTimeout(function() {

		var sm = new Ext.grid.CheckboxSelectionModel({
			singleSelect : false
		});
		sm.handleMouseDown = Ext.emptyFn;

		var cm = new Ext.grid.ColumnModel([new Ext.grid.RowNumberer(), sm, {
			header : '入库单号',
			dataIndex : 'inno'
		}, {
			header : '验收人',
			dataIndex : 'pid'
		}, {
			header : '供应商',
			dataIndex : 'provuid'
		}, {
			header : '入库日期',
			dataIndex : 'cwdate'
		}, {
			header : '运费支付方式',
			dataIndex : 'trankind'
		}, {
			header : '运费',
			dataIndex : 'tranmoney'
		}, {
			header : '财务标志',
			dataIndex : 'cwflag'
		}, {
			header : '合格证',
			dataIndex : 'okpass'
		}, {
			header : '随货同行联',
			dataIndex : 'tranNo'
		}, {
			header : '发票号',
			dataIndex : 'infp'
		}, {
			header : '备注',
			dataIndex : 'remark'
		}

		]);
		var ds = new Ext.data.Store({
			baseParams : {
				trancode : '42120'
			},
			proxy : new Ext.data.HttpProxy({
				url : '../' + WebServiceUrl
			}),
			reader : new Ext.data.JsonReader({
				totalProperty : 'totalProperty',
				root : 'root'
			}, [{
				name : 'id'
			}, {
				name : 'inno'
			}, {
				name : 'pid'
			}, {
				name : 'provuid'
			}, {
				name : 'cwdate'
			}, {
				name : 'trankind'
			}, {
				name : 'cwflag'
			}, {
				name : 'okpass'
			}, {
				name : 'tranNo'
			}, {
				name : 'infp'
			}, {
				name : 'tranmoney'
			}, {
				name : 'remark'
			}])
		});
		cm.defaultSortable = true; // 设置列可排序
		var grid = new Ext.grid.GridPanel({
			region : 'north',
			border : false,
			ds : ds,
			cm : cm,
			loadMask : {
				msg : '正在加载数据，请稍候。。。'
			},
			bbar : new Ext.PagingToolbar({
				pageSize : App.pageSize,
				store : ds,
				displayInfo : true,
				displayMsg : '显示第 {0} 条到 {1} 条记录，一共 {2} 条',
				emptyMsg : "没有记录"
			}),
			sm : new Ext.grid.RowSelectionModel({
				singleSelect : true
			}),
			title : "物料入库查询",
			tbar : ['起始时间:', {
				xtype : "datefield",
				format : 'Y-m-d',
				id : 'keywords',
				value : new Date(),
				selectOnFocus : true
			}, '-', "截止时间:", {
				xtype : "datefield",
				format : 'Y-m-d',
				value : new Date(),
				id : 'keywords2',
				selectOnFocus : true
			}, '-', {
				text : '查询',
				tooltip : '查询',
				handler : doSearch,
				iconCls : 'search'
			}, new Ext.app.SearchField({
				store : ds,
				width : 200
			})],
			height : Ext.get("grid").getHeight() - 180,
			bodyStyle : 'width:100%'
		});

		var cmm = new Ext.grid.ColumnModel([new Ext.grid.RowNumberer(), {
			header : '物料名称',
			dataIndex : 'materielid',
			width : 150
		}, {
			header : '厂家条码',
			dataIndex : 'factcode',
			width : 100
		}, {
			header : '条形码',
			dataIndex : 'barcode',
			width : 100
		}, {
			header : '入库类型',
			dataIndex : 'type',
			width : 80
		}, {
			header : '入库库位',
			dataIndex : 'pgid',
			width : 80
		}, {
			header : '入库数量',
			dataIndex : 'amount',
			width : 80
		}, {
			header : '属性1',
			dataIndex : 'attrib1',
			width : 80
		}, {
			header : '属性2',
			dataIndex : 'attrib2',
			width : 80
		}, {
			header : '属性3',
			dataIndex : 'attrib3',
			width : 80
		}, {
			header : '属性4',
			dataIndex : 'attrib4',
			width : 80
		}, {
			header : '属性5',
			dataIndex : 'attrib5',
			width : 80
		}, {
			header : '净进单价',
			dataIndex : 'inprice',
			width : 80
		}, {
			header : '含税价',
			dataIndex : 'taxprice',
			width : 80
		}, {
			header : '备注',
			dataIndex : 'remark',
			width : 110
		}]);
		cmm.defaultSortable = true;

		var dss = new Ext.data.Store({
			baseParams : {
				trancode : '421200'
			},
			proxy : new Ext.data.HttpProxy({
				url : '../' + WebServiceUrl
			}),
			reader : new Ext.data.JsonReader({
				totalProperty : 'totalProperty',
				root : 'root'
			}, [{
			name : 'id'
		}, {
			name : 'hid'
		}, {
			name : 'ord'
		}, {
			name : 'materielid'
		}, {
			name : 'factcode'
		}, {
			name : 'barcode'
		}, {
			name : 'amount'
		}, {
			name : 'comeamount'
		}, {
			name : 'inprice'
		}, {
			name : 'taxprice'
		}, {
			name : 'type'
		}, {
			name : 'flag'
		}, {
			name : 'modipid'
		}, {
			name : 'modidate'
		}, {
			name : 'remark'
		}, {
			name : 'attrib1'
		}, {
			name : 'attrib2'
		}, {
			name : 'attrib3'
		}, {
			name : 'attrib4'
		}, {
			name : 'attrib5'
		}])
		});

		var grid2 = new Ext.grid.GridPanel({
			region : 'center',
			border : false,
			ds : dss,
			cm : cmm,
			loadMask : {
				msg : '正在加载数据，请稍候。。。'
			},
			sm : new Ext.grid.RowSelectionModel({
				singleSelect : true
			}),
			title : "物料入库明细",
			height : 180,
			bodyStyle : 'width:100%'
		});

		var ct = new Ext.Panel({
			renderTo : 'grid',
			border : false,
			bodyStyle : 'width:100%',
			height : Ext.get("grid").getHeight(),
			layout : 'border',
			items : [grid, grid2]
		});

		// 双击事件
		grid.on('rowdblclick', function(grid, rowIndex, e) {
			new App.EditSalesOrders(ds, grid, rowIndex);
		});

		// 单击事件
		grid.on('rowclick', function(grid, t, rowIndex, e) {
			SearchSalesOrdersd();
		});

		// 加载分页参数
		ds.load({
			params : {
				start : 0,
				limit : App.pageSize
			}
		});

		// 根据单头Id查询销售明细
		function SearchSalesOrdersd() {
			var record = grid.getSelectionModel().getSelected();
			dss.baseParams = {
				hid : record.get('id'),
				trancode : '421200'
			}
		};

		function doSearch() {
			var keywords = Ext.get('keywords').dom.value;// 起始时间
			var keywords2 = Ext.get('keywords2').dom.value;// 结束时间
			ds.baseParams = {
				keywords : keywords,
				keywords2 : keywords2,
				trancode : '21110'
			};
			ds.load({
				params : {
					start : 0,
					limit : App.pageSize
				}
			});
		}
		// 获得当前日期
		function showDate() {
			var today = new Date();
			var day = today.getDate();
			var month = today.getMonth() + 1;
			var year = today.getYear();
			var date = year + "-" + month + "-" + day;
		}
		// 注册回车查询事件
		Ext.getCmp('keywords2').on('specialkey', doSearch);

		Ext.MessageBox.hide();//隐藏进度条
	}, 1000)
})
